152

M. Bakro et al.

Fig. 6 Hash algorithm

diagram

2.9

Hashing

Hashing is one of the concepts of unidirectional encryption since the plain text cannot

be retrieved from the ciphertext as shown in Fig. 6, as the data are compressed to a

standard fixed size regardless of its original length, and no keys in hashing are used

for encryption or decryption. The ciphertext is generated from the plain text [32].

The hash algorithms are used to maintain the integrity of the data, as the digital

signature algorithm DSA uses a secure hash algorithm (SHA) to create signatures

and verify them. DSA is one of the asymmetric algorithms, where the sender uses

the private key to create the digital signature, while the receiver uses the public key

for signature verification, DSA has been developed by NIST, and its functions are

summarized in signature and verification [33]. Hash keys are also generated by the

SHA algorithm, and this hash is required to retrieve files. The Hash algorithms have

several types, the most famous of which are: MD5, SHA, but the SHA family remains

the most famous as we note through its applications and because of its security, as

SHA’s algorithm is an encryption hashing algorithm designed by the national security

agency (NSA) and announced by the National Institute of Standards and Technology

(NIST). This algorithm can compress the given information and give a hash key

160-bit (20-byte). Of course, to choose one of the hash algorithms (MD5, SHA-1,

SHA-256, and SHA-512), several factors the most important of which are safety,

speed, and nature of use, must be taken into account. From the security aspect, MD5

and SHA-1 were excluded as a result of their penetration. SHA-256 and SHA-512

belong to the most secure SHA-2 family [36], where SHA-256 is calculated in word

32-bit, and SHA-512 with word 64-bit, it should be noted that SHA-256 is much

faster than SHA-512. So, I chose to rely on SHA-256 because it is the fastest and

because the nature of use within the blockchain technique requires that [37] as all

research papers use SHA-256 with blockchain technology.

2.9.1

Blockchain Technology

Maintaining data integrity and availability is done through blockchain technology,

which appeared for the first time in the form of digital currency (Bitcoin) for digital

games and was designed by Nakamoto in 2008, then began to increase in popularity.

Blockchain is a decentralized P2P network so that the user and his counterpart are

able to manage it without a central authority away from the fees imposed by the third

party [38], as shown in Fig. 7.

Blockchain is a decentralized distributed technology that employs a variety of

encryption patterns, it represents a database of all digital transactions and events that

take place between participants. Blockchain technology consists of an organized

series of blocks containing information records, each block representing a structure